/*
 * This is GPL v2 licensed code. See the file LICENSE in the
 * source distribution, or www.gnu.org/copyleft/gpl.html, for
 * more information.
 *
 * Copyright (C) by Håkan Lindqvist 2006, 2007
 */

package PolicyAlgebra.Plugin;

import PolicyAlgebra.Type.Policy;


/** 
 * Ths inteface defines the actions that any user inteface
 * to the algebra must provide.
 */
public interface Plugin {

	/* Import a policy from a file or some other resource.
	 * The actual import will be handled by some plugin.
	 */
	public Policy importPolicy(String resource) throws PluginException;

	/* Export the policy loaded to a resource. The actual
	 * export will be handled by some plugin.
	 */
	public void exportPolicy(String resource);
}
